home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Aminet 1 (Walnut Creek)
/
Aminet - June 1993 [Walnut Creek].iso
/
aminet
/
util
/
rexx
/
rexxmode10.lha
/
rxnq
/
rxnq.c
< prev
Wrap
C/C++ Source or Header
|
1993-03-20
|
1KB
|
53 lines
;/*
sc rxnq.c LINK NOSTARTUP NOSTKCHK STRINGMERGE STREQ IGNORE=73
quit
*/
/*
* NAME
* rxnq.c
*
* DESCRIPTION
* This is a small HACK which removes the quotes from a commandline
* and executes RX. This is due to a bug in GNUEmacs Amiga port 1.26
* which quotes the arguments to commands executed with
* (start-process ...)
*
* To compile under SAS/C 6.x, execute this file.
*
* STATUS
* This file is distributed under the GNU General Publc License.
*
* AUTHOR
* Anders Lindgren, d91ali@csd.uu.se
*/
#include <proto/exec.h>
#include <proto/dos.h>
#include <string.h>
__asm __saveds int
not_main(register __a0 const char * arg, register __d0 int len)
{
register struct Library * DOSBase;
register UBYTE * str;
register int rc = 20;
if (DOSBase = OpenLibrary("dos.library", 0)) {
if (str = AllocMem(len+4, 0)) {
strcpy(str, "RX ");
if (len >= 3 && arg[0] == '\"' && arg[len-2] == '\"') {
strncat(str, arg+1, len-3);
}
else {
strncat(str, arg, len-1);
}
rc = (Execute(str, NULL, Output()) ? 0 : 10);
FreeMem(str, len+4);
}
CloseLibrary(DOSBase);
}
return(rc);
}